package com.pn.taikao.mapper;

import com.pn.taikao.entity.Score;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 成绩Mapper
 */
@Mapper
public interface ScoreMapper {
    /**
     * 插入成绩记录
     */
    int insert(Score score);
    
    /**
     * 更新成绩记录
     */
    int update(Score score);
    
    /**
     * 根据考试ID查询成绩
     */
    Score selectByExamId(@Param("examId") Long examId);
    
    /**
     * 根据学生ID查询所有成绩
     */
    List<Score> selectByStudentId(@Param("studentId") Long studentId);
    
    /**
     * 根据试卷ID查询所有成绩统计信息
     */
    List<Map<String, Object>> selectStatisticsByPaperId(@Param("paperId") Long paperId, @Param("teacherId") Long teacherId);
    
    /**
     * 查询所有试卷的成绩统计信息
     */
    List<Map<String, Object>> selectAllStatistics(@Param("teacherId") Long teacherId);
}

